package com.topwater.topwater.service.impl;

import com.topwater.topwater.entity.SyMenu;
import com.topwater.topwater.dao.SyMenuDao;
import com.topwater.topwater.service.SyMenuService;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Param;

import javax.annotation.Resource;

/**
 * (SyMenu)表服务实现类
 *
 * @author 胡文 qq:986776
 *自定义生成器制造
 */
@Service("syMenuService")
public class SyMenuServiceImpl  implements SyMenuService {
    @Resource
    private SyMenuDao syMenuDao;

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    @Override
    public SyMenu queryById(Integer id) {
        return this.syMenuDao.queryById(id);
    }

 
    /**
     * 新增数据
     *
     * @param syMenu 实例对象
     * @return 实例对象
     */
    @Override
    public SyMenu insert(SyMenu syMenu) {
        this.syMenuDao.insert(syMenu);
        return syMenu;
    }
  @Override
    public SyMenu insertNotNull(SyMenu syMenu) {
        this.syMenuDao.insertNotNull(syMenu);
        return syMenu;
    }
    /**
     * 修改数据
     *
     * @param syMenu 实例对象
     * @return 实例对象
     */
    @Override
    public SyMenu update(SyMenu syMenu) {
        this.syMenuDao.update(syMenu);
        return this.queryById(syMenu.getId());
    }

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return 是否成功
     */
    @Override
    public boolean deleteById(Integer id) {
        return this.syMenuDao.deleteById(id) > 0;
    }
    /**
    *字符串自动模糊查询
    **/
    public List<SyMenu> queryByLike(SyMenu syMenu){
        return this.syMenuDao.queryByLike(syMenu);
    }
    
    public List<SyMenu> queryByLike2(String str){
         return this.syMenuDao.queryByLike2(str);
    }
    /**
    *多表连接查询
    */
    public List<Map> queryJoin(@Param("syMenu")  SyMenu syMenu, @Param("tables") String... tables){
         return this.syMenuDao.queryJoin(syMenu,tables);
    }
}
